Skip to content

Conversation

@kazutakahirata
Copy link
Contributor

This patch removes traces of BlockEdgesAdder, which was a workaround
for an ancient version of GCC removed by:

commit c17e88f
Author: Kazu Hirata [email protected]
Date: Tue Jul 1 10:42:29 2025 -0700

This patch removes traces of BlockEdgesAdder, which was a workaround
for an ancient version of GCC removed by:

  commit c17e88f
  Author: Kazu Hirata <[email protected]>
  Date:   Tue Jul 1 10:42:29 2025 -0700
@llvmbot llvmbot added the llvm:analysis Includes value tracking, cost tables and constant folding label Jul 4, 2025
@llvmbot
Copy link
Member

llvmbot commented Jul 4, 2025

@llvm/pr-subscribers-llvm-analysis

Author: Kazu Hirata (kazutakahirata)

Changes

This patch removes traces of BlockEdgesAdder, which was a workaround
for an ancient version of GCC removed by:

commit c17e88f
Author: Kazu Hirata <[email protected]>
Date: Tue Jul 1 10:42:29 2025 -0700


Full diff: https://github.com/llvm/llvm-project/pull/147102.diff

1 Files Affected:

  • (modified) llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h (-6)
diff --git a/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h b/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
index d86760c4f9fe9..c9de5a4fa9213 100644
--- a/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
+++ b/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
@@ -72,9 +72,6 @@ namespace bfi_detail {
 
 struct IrreducibleGraph;
 
-// This is part of a workaround for a GCC 4.7 crash on lambdas.
-template <class BT> struct BlockEdgesAdder;
-
 /// Mass of a block.
 ///
 /// This class implements a sort of fixed-point fraction always between 0.0 and
@@ -843,9 +840,6 @@ void IrreducibleGraph::addEdges(const BlockNode &Node,
 ///         (Running this until fixed point would "solve" the geometric
 ///         series by simulation.)
 template <class BT> class BlockFrequencyInfoImpl : BlockFrequencyInfoImplBase {
-  // This is part of a workaround for a GCC 4.7 crash on lambdas.
-  friend struct bfi_detail::BlockEdgesAdder<BT>;
-
   using BlockT = typename bfi_detail::TypeMap<BT>::BlockT;
   using BlockKeyT = typename bfi_detail::TypeMap<BT>::BlockKeyT;
   using FunctionT = typename bfi_detail::TypeMap<BT>::FunctionT;

@shiltian
Copy link
Contributor

shiltian commented Jul 5, 2025

commit c17e88f
Author: Kazu Hirata [email protected]
Date: Tue Jul 1 10:42:29 2025 -0700

Guess these should be removed when merging.

@kazutakahirata kazutakahirata merged commit 3e2e99b into llvm:main Jul 5, 2025
11 checks passed
@kazutakahirata kazutakahirata deleted the cleanup_20250704_workaround_cleanup branch July 5, 2025 01:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

llvm:analysis Includes value tracking, cost tables and constant folding

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants